perm filename HIST59[W84,JMC] blob
sn#745445 filedate 1984-03-02 generic text, type C, neo UTF8
COMMENT ā VALID 00003 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 MIT COMPUTATION CENTER Feb. 16, 1959
C00010 00003 MINUTES OF PROGRAMMING SYSTEMS ADVISORY MEETING
C00016 ENDMK
Cā;
MIT COMPUTATION CENTER Feb. 16, 1959
ON OPERATOR SYSTEMS
This memo deals with three ideas. They are 1. compatibility of
operator programs and compilers and assemblers, 2. time sharing
operator systems, 3. program file systems. MIT is considering these
ideas in connection with a 7090 system.
1. COMPATIBILITY
Up to now operator systems have been designed in connection
with prescribed assemblers and compilers. At present many new compilers
and assemblers are being proposed. It seems that if SHARE will
adopt certain standards for acceptable compilers they can be automatically
fitted for any operator system which also meets these standards. This is
especially important in a machine like the 709 or 7090 which may process
tapes from one job concurrently with the compiling of another.
The requirements on compilers are quite light, essentially
they must be summarized as follows:
1. Tape and channel assignments whould be alterable by the
operator system. It would be better if they used operator system
in-out subroutines.
2. Trapping should be handled by system routines. The
particular compiler may of course ask that interruptions in what it
was doing should return control to it.
3. The compilers should be relocatable by the system and
must be restrictable to part of memory. Of course, a compiler
will have a certain minimum space requirement.
4. They should accept and produce information in a condensed form
and should label it appropriately for condensed storage.
5. They should never stop but relinquish control in case of
despair.
6. They should accept the above controls and other parameters
in a prescribed way.
7. They might be required to report on the status of the job
if asked.
2. TIME SHARING OPERATION
We are not discussing the connection of devices like radars,
etc. but rather the provision of on-line programmer can make
changes in his program at any of a number of consoles while the machine is doing
other jobs.
This requires;
1. The ability to connect a number of typewriters and possibly
display devices to the computer with interruption capabilities.
2. The elimination of stops either by programming or hardware.
3. Preventing erroneous programs from destroying other programs
or the system. A very slight modification to Fortran whereby subscripts
were interpreted modulo the size of their arrays would make Fortran programs
safe.
It is possible to make an optional feature of an assembler
a way of assembling programs that will prevent the program from
injuring itself or other programs. This requires some restrictions
on self modification which are not onerous for machines with indexing facilities.
[1984 comment: I had thought about boundary and relocation registers and
user mode, but I didn't mention them, because I feared that my ideas
wouldn't be accepted if they called for hardware modifications to the
forthcoming IBM 7090. When Teager became involved, he was much less shy.
He proposed boundary registers and IBM agreed to install them. Moreover,
I was surprised when Teager's claim that they wouldn't slow the machine
turned out to be true. I was again surprised when Fredkin succeeded in
getting hardware modifications to the PDP-1 for time-sharing. I suppose
that if I had known some electrical engineering, I wouldn't have been
so shy about proposing hardware changes in existing machines.]
3. PROGRAM FILES
A program file system can make a number of processes automatic
that otherwise require error prone hand combination of programs. The
chance of error is enhanced when the processes have to be repeated. Such
a system also saves machine time by reducing input and output especially
when combined with a facility for interrogating on line programs being
debugged.
The optimum equipment for such files at present appears to be magnetic
disks. However, it is still practical using tapes. A simpler system than
the NBS Corbie system was investigated at MIT and looks even better. Under the
assumption that there were 300,000 words of current program (condensed SAP,
Fortran, and binary) in the MIT Computation Center it was estimated that
the system would spend 5 to 10 of its time copying inactive programs
during a 1 hour operator run. This was based on sorting the incoming
requests by position in the program file, copying inactive programs to
a new tape, executing the active requests in the order of the programs
on tape. This fraction of time could be reduced or longer files
tolerated by using a more sophisticated system on the 709 or 7090.
MINUTES OF PROGRAMMING SYSTEMS ADVISORY MEETING
These minutes are very approximate and are intended so
that participants can remember what was discussed at the next meeting.
1. McCarthy announced that the purpose of the meeting was to exchange
ideas between the center and some experienced users of its facilities
that would help in planning an operating system for our next computer.
Ideas as to equipment to be made available, the operator program, and
the system by which runs are submitted, executed, and the results
given back to the programmer, are relevant.
2. McCarthy briefly described the IBM 7090
3. Helwig briefly described the MIT operator system.
4. Corbato briefly described the SCAT system and the Mockdonald
operator system.
5. McCarthy then described the problem of the turnaround time of the
center from the point of view of the programmer. Currently, the time
between submission of an operator run and getting back the results
varies from four to twenty-four hours when the machine is working.
He inquired about to what extent the efficiency of programming depends
on the turn around time. He discussed proposals for reducing this
time based on manual intervention on a time-sharing basis and the use of
program files either on tapes or magnetic disks.
6. The meeting was then opened for general discussion.
Ross made three points.
1. If programs using intervention are arranged suitably, the
interrvention facilities can be replaced by automatic facilities when
convenient.
2. His group does not use the MIT operator system because they
need more tapes than it allows.
3. They have a group control program for handling programs
and data arrays too big for core.
Fox made three comments.
1. Both beginning and end dumps need to be filable in a file system.
2. They consider two runs per day enough to survive at present.
3. They want to be able to print symbol tables.
Barnett remarked that
1. The turn around time requirements change during the course
of debugging.
2. On-line typewriters might be clogged by bad programmers.
Arden remarked also that an on-line user would waste much
computer time.
Phillips asked whether the turn around time could be reduced without
major changes in the system.
Ross and Barnett emphasized the importance of manual intervention
as an end in itself.
Barnett suggested shorter operator runs and expressed doubts about
tape files.
McCarhy suggested a system in which operator system cards are read
on-line permitted continuous rather than batched operator runs.
Barnett discussed remote operation in various forms.
Steinberg proposed that users be urged or required to reduce output.
Teager mentioned comparison dumps.
The meeting then adjourned with an agreement to meet again in two
weeks. It is proposed that this be extended to three weeks so that the next
meeting will be on Tuesday, March 13 at 11 a.m. in room 26-168.
Any memoranda that any participant would like distributed to the
group may be left with Professor McCarthy's secretary in room 26-007A.
He did not get the names of all participants so that the distribution of
these minutes will not be quite complete.
PARTICIPANTS AT IBM 7090 MEETING March 3, 1959
Name Address
Arden, Dean 26-269
Barnett, Michael 6-320
Callaghan, Marion 26-139
Corbato, F.J. 26-269
Fox, Phyllis 52-564
Helwig, Frank C. 26-263
Marcus, Richard S. 32-100
Merwin, Marjorie 26-139
Miller, Charles 1-263
Phillips, Norman 24-507
Ross, Douglas 32-100
Steinberg, Joseph 26-143
Teager, H. 26-261
Thurston, William B. 26-150